In 1996, the Advanced Television Systems Committee, Inc. (“ATSC”) adopted an ATSC digital television (“DTV”) terrestrial transmission standard. Several generations of receivers have been developed since adoption of the ATSC DTV standard. Generally, each generation of receivers was developed to improve reception performance over previous generations of receivers. A main impediment to good reception is severe multipath interference. Hence, complicated equalizers were developed for receivers in order to improve receiver performance by mitigating the effects of the multipath interference.
Terrestrial broadcast DTV channel presents quite a difficult multipath environment. Relatively strong duplicates of the transmitted signal may arrive at a receiver via various reflected signal paths as well as via the direct path from transmitter to receiver. In some cases, there is no direct path from transmitter to receiver, and all received signal paths are via reflection. If the path carrying the strongest signal is regarded as the main signal path, reflected signals may arrive at the receiver both prior to or subsequent to the main signal. The arrival time differences among various signal paths, compared to that of the main signal path, can be large. Also, these reflected signals may vary in time, both in terms of amplitude and delay relative to the main signal path.
During a typical transmission, data is transmitted in frames 100 as shown in FIG. 1. Each frame 100 is composed of two fields 104, 108. Each of the fields 104, 108 includes 313 segments. Each of the segments includes 832 symbols. As such, each of the fields 104, 108 includes a total of 260,416 symbols. Each of the segments begins with a four-symbol sequence, referred to as a segment sync, which comprises four symbols [+5, −5, −5, +5]. The first segment in each field is a field sync segment.
FIG. 2 shows an exemplary field sync segment 200 of the field 104 or 108 of FIG. 1. The field sync segment 200 includes a segment sync 204, a pseudo noise sequence 208 that comprises 511 symbols (PN511), a pseudo noise sequence 212 that comprises 63 symbols (PN63), a second PN63 sequence 216, and a third PN63 sequence 220. The third PN63 sequence 220 is followed by a mode sequence 224 that comprises 24 symbols to indicate a transmitting mode of 8-level vestigial sideband (“8VSB”). In alternate fields, the three PN63 sequences 212, 216, 220 are the same. In the remaining fields, the first and third PN63 sequences 212, 220 are the same while the second PN63 sequence 216 is inverted. In either case, the first 728 symbols of the field sync segment 200 are a priori known to a receiver and may be used for equalizer training. The mode sequence 224 is followed by a reserved mode sequence 228 of 92 symbols composing various mode and reserved fields that are not a priori known to the receiver. The sequences 204, 208, 212, 216, 220, 224, and 228 symbols use a symbol set of {+5, −5}. The field sync segment 200 ends with a precode sequence 232 comprising 12 symbols that use a symbol set of {−7, −5, −3, −1, +1, +3, +5, +7}, and are duplicates of the last 12 symbols of the preceding data field. These are thus called precode symbols.
The remaining 312 segments of each field 104, 108 are referred to as data segments. An exemplary data segment 300 is shown in FIG. 3. After the segment sync symbols 204, the data segment 300 includes a data sequence 304 that comprises 828 symbols. The symbols are trellis encoded by a 12 phase trellis encoder that results in 8-level symbols from a symbol set of {−7, −5, −3, −1, +1, +3, +5, +7}.
FIG. 4 shows a digital data (e.g., 8VSB) transmitter 400. The transmitter 400 includes a randomizer 404 that randomizes data to be transmitted, a Reed-Solomon encoder 408 that encodes the randomized data from the randomizer 404, and an interleaver 412 that interleaves Reed-Solomon byte-wise encoded data. The transmitter 400 also includes a trellis encoder 416 that encodes the interleaved data. An exemplary trellis encoder 416 is a 12-phase trellis encoder. A data frame formatter 420 subsequently adds segment sync symbols and field sync symbols to the trellis coded data at appropriate times to create a data frame structure like that of FIG. 1. A pilot insertion module 424 then inserts a pilot carrier frequency signal by adding a fixed DC level to each of the symbols.
A modulator 428 then implements root raised cosine pulse shaping and modulates the signal for RF transmission as an 8VSB signal at a symbol rate of 10.76 MHz. The 8VSB signal differs from other commonly used linear modulation methods such as quadrature amplitude modulation (“QAM”) in that the 8VSB symbols are real, but have a pulse shape that is complex with only the real part of the pulse having a Nyquist shape.
FIG. 5 shows a block diagram of a digital data (e.g., 8VSB) receiver 500. The receiver 500 includes a tuner 504 to receive RF signals transmitted from the transmitter 400, and a demodulator 508 to demodulate the RF signal to baseband. The receiver 500 also includes a sync and timing recovery module 512 to perform symbol clock timing and frame synchronization recovery on the demodulated signals. The receiver 500 also includes a matched filter 516 to filter the recovered signals, an equalizer 520 that equalizes the filtered signals, a phase tracker 524 that reduces the phase noise of the equalized signals, a trellis decoder 528 that decodes the noise-reduced equalized signals, a deinterleaver 532 that deinterleaves the decoded signals, a Reed-Solomon decoder 536 that decodes the deinterleaved signals, and a derandomizer 540 that derandomizes the decoded signals.
The multipath RF channel between the transmitter 400 and the receiver 500 can be viewed in its baseband equivalent form. For example, the transmitted signal has a root raised cosine spectrum with a nominal bandwidth of 5.38 MHz and an excess bandwidth of 11.5% centered at one fourth of the symbol rate (i.e., 2.69 MHz). Thus, the transmitted pulse shape or pulse q(t) is complex and given by EQN. (1):q(t)=ejπFst/2qRRC(t)  (1)where Fs is a symbol frequency, and qRRC(t) is a real square root raised cosine pulse with an excess bandwidth of 11.5% of the multipath RF channel. The pulse q(t) is referred to as a “complex root raised cosine pulse.” For an 8VSB system, the transmitted pulse shape q(t) and the received and matched filter pulse shape q*(−t) are identical since q(t) is conjugate-symmetric. Thus, the raised cosine pulse p(t), referred to as the “complex raised cosine pulse,” is given by EQN. (2):p(t)=q(t)*q*(−t)  (2)where * denotes convolution, and * denotes complex conjugation.
The transmitted baseband signal with a data rate of 1/T symbols/sec can be represented by EQN. (3):
                                          s            ⁡                          (              t              )                                =                                    ∑              k                                                                    ⁢                                                  ⁢                                          I                k                            ⁢                              q                ⁡                                  (                                      t                    -                    kT                                    )                                                                    ,                            (        3        )            where {IkεA≡{α1, . . . α8}⊂R1} is a transmitted data sequence, which is a discrete 8-ary sequence taking values of the real 8-ary alphabet A. For 8VSB, the alphabet set is {−7, −5, −3, −1, +1, +3, +5, +7}.
A physical channel between the transmitter 400 and the receiver 500 is denoted c(t) and can be described by
                              c          ⁡                      (            t            )                          =                              ∑                          k              =                              -                                  L                  ha                                                                    L              hc                                ⁢                                          ⁢                                    c              k                        ⁢                          δ              ⁡                              (                                  t                  -                                      τ                    k                                                  )                                                                        (        4        )            where {ck(τ)}⊂C1, and Lha and Lhc are the maximum number of anti-causal and causal multipath delays, respectively. Constant τk is a multipath delay, and variable δ(t) is a Dirac delta function. Hence, the overall channel impulse response is given by EQN. (5):
                              h          ⁡                      (            t            )                          =                                            p              ⁡                              (                t                )                                      *                          c              ⁡                              (                t                )                                              =                                    ∑                              -                                  L                  ha                                                            L                hc                                      ⁢                                                  ⁢                                          c                k                            ⁢                              p                ⁡                                  (                                      t                    -                                          τ                      k                                                        )                                                                                        (        5        )            
The matched filter output y(t) in the receiver prior to equalization is given by EQN. (6):
                                          y            ⁡                          (              t              )                                =                                                    (                                                      ∑                    k                                                                                                  ⁢                                                                          ⁢                                      δ                    ⁡                                          (                                              t                        -                        kT                                            )                                                                      )                            *                              h                ⁡                                  (                  t                  )                                                      +                          v              ⁡                              (                t                )                                                    ,                            (        6        )            where v(t) is given by EQN. (7):v(t)=η(t)*q*(−t)  (7)which denotes a complex or colored noise process after the pulse matched filter, with η(t) being a zero-mean white Gaussian noise process with spectral density σn2 per real and imaginary part. Sampling the matched filter output y(t) at the symbol rate produces a discrete time baseband representation of the input to the equalizer 520, as shown in EQN. (8):
                                                        y              ⁡                              [                n                ]                                      ≡                          y              ⁡                              (                t                )                                              ⁢                      ❘                          t              =              nT                                      =                                            ∑              k                                                                    ⁢                                                  ⁢                                          I                k                            ⁢                              h                ⁡                                  [                                      n                    -                    k                                    ]                                                              +                                    v              ⁡                              [                n                ]                                      .                                              (        8        )            
As stated above, for each data field of 260,416 symbols, only 728 symbols, which reside in the field sync segment 200, are a priori known and thus available for equalizer training. Furthermore, conditions of the multipath channel are generally not known a priori. As such, the equalizer 520 in the receiver 500 is so configured to adaptively identify and combat various multipath channel conditions.
In the following discussion, n represents a sample time index, regular type represents scalar variables, bold lower case type represents vector variables, bold upper case type represents matrix variables, a * superscript indicates complex conjugation, and the H superscript indicates conjugate transposition (Hermitian).
The equalizer 520 may be implemented as, or employ equalization techniques relating to, linear equalizers (“LEs”), decision feedback equalizers (“DFEs”), and predictive decision feedback equalizers (“pDFEs”). Equalizer tap weight adaptation is often achieved via a least mean square (“LMS”) algorithm or system, which is a low complexity method for adaptively approximating a minimum mean squared error (“MMSE”) tap weight solution, or equivalently a solution to the Weiner Hopf equations, described below.
In the case of an LE, let u[n] be an N long equalizer input vector, y[n] be the equalizer output wH[n]u[n], where wH[n] is an N long equalizer tap weight vector of a linear transversal filter or an adaptive filter,
Ruu[n]=E(u[n]uH[n]) has a size of N×N, and
rdu=E(u[n]d*[n])
Then e[n] d[n]−y[n] where d[n] is the desired symbol.
The mean squared error (“MSE”) is given by J=E(e[n]e*[n]). It can be shown that the MSE as a function of filter taps w, J(w), is given by (n index omitted for clarity) EQN. (9):J(w)=σd2−wHrdu−rduHw+wHRuuw  (9)A gradient vector of J(w) is given by EQN. (10):
                              ∇                      J            ⁡                          (              w              )                                      =                              2            ⁢                                          ∂                                  J                  ⁡                                      (                    w                    )                                                                              ∂                                  w                  *                                                              =                                    [                                                                                                                                            ∂                          J                                                                          ∂                                                      w                            0                            R                                                                                              +                                              j                        ⁢                                                                              ∂                            J                                                                                ∂                                                          w                              0                              I                                                                                                                                                                                                                                                                                        ∂                          J                                                                          ∂                                                      w                            1                            R                                                                                              +                                              j                        ⁢                                                                              ∂                            J                                                                                ∂                                                          w                              1                              I                                                                                                                                                                                                                -                                                                                        -                                                                                                                                                                ∂                          J                                                                          ∂                                                      w                                                          N                              -                              1                                                        R                                                                                              +                                              j                        ⁢                                                                              ∂                            J                                                                                ∂                                                          w                                                              N                                -                                1                                                            I                                                                                                                                                                                      ]                        =                          2              ⁢                              (                                                                            R                      uu                                        ⁢                    w                                    -                                      r                    du                                                  )                                                                        (        10        )            
An optimal MMSE tap vector wopt is found by setting ∇J(w)=0, yielding the Weiner Hopf tap weight solution given by EQN. (11):wopt[n]=Ruu−1[n]rdu[n]  (11)The MSE is generally a measure of the closeness of w to wopt. As a function of the tap weight vector w, the MSE is then given by EQN. (12):J(w)=Jmin+(w−wopt)HRuu(w−wopt)  (12)where
                              J          min                =                                            min              w                        ⁢                          J              ⁡                              (                w                )                                              =                                                    σ                d                2                            -                                                r                  du                  H                                ⁢                                  R                  uu                                      -                    1                                                  ⁢                                  r                  du                                                      =                          J              ⁡                              (                                  w                  opt                                )                                                                        (        12        )            In practice, for large N, inverting Ruu is prohibitively complicated. So a less complicated iterative solution is desirable. A steepest descent method (“SD”) provides such a solution. It is given by EQN. (13):w[n+1]=w[n]−μ{∇J(w[n])}=w[n]−μ[Ruu[n]w[n]−rdu[n]]  (13)where μ is a step size parameter. However, estimating and updating Ruu and rdu can also be complicated.
By using instantaneous approximations for Ruu and rdu, EQN. (13) can be greatly simplified for practical applications. For example, as shown in EQN. (14) and EQN. (15),Ruu[n]≈u[n]uH[n]  (14)andrdu≈u[n]d*[n],  (15)the gradient can be given by EQN. (16):
                                                                        ∇                                  J                  ⁡                                      (                                          w                      ⁡                                              [                        n                        ]                                                              )                                                              =                            ⁢                              2                ⁢                                  (                                                                                                              R                          uu                                                ⁡                                                  [                          n                          ]                                                                    ⁢                                              w                        ⁡                                                  [                          n                          ]                                                                                      -                                                                  r                        du                                            ⁡                                              [                        n                        ]                                                                              )                                                                                                        ≈                            ⁢                                                -                  2                                ⁢                                                      u                    ⁡                                          [                      n                      ]                                                        ⁡                                      [                                                                                            d                          *                                                ⁡                                                  [                          n                          ]                                                                    -                                                                                                    u                            H                                                    ⁡                                                      [                            n                            ]                                                                          ⁢                                                  w                          ⁡                                                      [                            n                            ]                                                                                                                ]                                                                                                                          ≈                            ⁢                                                -                  2                                ⁢                                  u                  ⁡                                      [                    n                    ]                                                  ⁢                                                      e                    *                                    ⁡                                      [                    n                    ]                                                                                                          (        16        )            A practical LMS algorithm for the equalizer 520, as shown in EQN. (17), can then be determined from EQN. (13):
                                                                        w                ⁡                                  [                                      n                    +                    1                                    ]                                            =                                                w                  ⁡                                      [                    n                    ]                                                  -                                  μ                  ⁢                                      {                                          ∇                                              J                        ⁡                                                  (                                                      w                            ⁡                                                          [                              n                              ]                                                                                )                                                                                      }                                                                                                                          =                                                w                  ⁡                                      [                    n                    ]                                                  -                                  2                  ⁢                  μ                  ⁢                                                                          ⁢                                      u                    ⁡                                          [                      n                      ]                                                        ⁢                                                            e                      *                                        ⁡                                          [                      n                      ]                                                                                                                              (        17        )            where μ is a step size parameter.
FIG. 6 shows a signal-to-noise-plus-interference-ratio (“SINR”) plot 600 depicting a plurality of SINRs obtained from a plurality of symbol blocks with an LMS-based LE as discussed above. Similarly, FIG. 7 shows an MSE plot 700 depicting a plurality of MSEs obtained from the plurality of symbol blocks with the LMS-based LE as discussed above. It is well known that SINR and MSE are related as shown in EQN. (18):
                    SINR        =                  10          ⁢                      log            10                    ⁢                                    signal              ⁢                                                          ⁢              power                        MSE                                              (        18        )            As shown in FIG. 6, time (in terms of symbol blocks processed by the equalizer 520) is measured along an x-axis 604, and SINR is measured along a y-axis 608. FIG. 6 shows an SINR curve 612 for different times after symbols are equalized with the equalizer 520. FIG. 6 shows that the curve 612 converges to an SINR value of about 15 dB after about 3,000 symbol blocks have been equalized, where each block includes 512 symbols. Similarly, as shown in FIG. 7, time is measured along an x-axis 704, and MSE is measured along a y-axis 708. FIG. 7 shows an MSE curve 712 for different times after symbols are equalized with the equalizer 520. FIG. 7 shows that the MSE curve 712 converges to an MSE value of about 1 dB after about 3,000 symbol blocks have been equalized.
In general, equalizer convergence is achieved when the SINR rises above a prescribed value before approaching a SINR convergence value such that subsequent error correction modules, such as the trellis decoder 528 and the Reed-Solomon decoder 536, can nearly completely correct all data errors. For 8VSB, the prescribed value is about 15 dB, and the SINR convergence value, which will depend on channel conditions, must be larger than that prescribed value. An example is shown in FIG. 6, where values of SINR rise above 15 dB before approaching an SINR convergence value of about 16 dB.
FIG. 8 shows an LE system 800 that utilizes the LMS algorithm as discussed. The LE system 800 includes a linear transversal filter 804 with tap weights w fed by an input data vector u[n]. The filter 804 has an output y[n] that feeds a non-linear decision device 808. The decision device 808 has an output d[n] that is a set of likely symbols transmitted. The output d[n] is subtracted from the output y[n] to create an error signal e[n]. The error signal e[n] is used by an LMS algorithm 812 to update the tap weights w of the filter 804 for time n+1.